﻿using System;
using System.Web.Services;
using System.Web.Script.Services;
using Business_Objects;
using System.Collections.Generic;
using ServicesComponent.Repositories;

public partial class QuanLyDinhDuong_ThucPhamDetails : System.Web.UI.Page
{
    private IThucPhamRepository _ThucPhamRepository;
    private IDonViTinhRepository _DonViTinhRepository;
    private INhomThucPhamRepository _NhomThucPhamRepository;
    private static Guid id = Guid.NewGuid();
    private static string action;

    protected void Page_Load(object sender, EventArgs e)
    {
        _ThucPhamRepository = FactoryServices.GetServicesThucPham(_ThucPhamRepository);
        _NhomThucPhamRepository = FactoryServices.GetServicesNhomThucPham(_NhomThucPhamRepository);
        _DonViTinhRepository = FactoryServices.GetServicesDonViTinh(_DonViTinhRepository);
        LoadDropdownlist();
        Session["SchoolID"] = "1";
        action = Request.QueryString["ac"].ToString();
        if (IsPostBack == false)
        {
            if (action == "'sua'")
            {
                id = Guid.Parse(Request.QueryString["id"].ToString());
                lblTitle.Text = "Sửa thực phẩm";
                FillDataToControl(id);
            }
            if (action == "'them'")
            {
                lblTitle.Text = "Thêm mới thực phẩm";
            }
        }
    }

    void FillDataToControl(Guid Id)
    {
        //Đổ data lên control theo id get về
        ThucPham obj = _ThucPhamRepository.Get(Id.ToString());
        txtTenThucPham.Value = obj.TenThucPham;
        ddlNhomThucPham.SelectedValue = obj.NhomThucPhamId.ToString();
        ddlDonViTinh.SelectedValue = obj.DonViTinhId.ToString();
        txtGiaHienThoi.Value = obj.GiaHienThoi.ToString();
    }

    bool ValiDate()
    {
        if (txtTenThucPham.Value.ToString() == "" || txtGiaHienThoi.Value.ToString() == "" || 
            Session["SchoolID"].ToString() == "")
        {
            return false;
        }
        try
        {
            double.Parse(txtGiaHienThoi.Value);
            return true;
        }
        catch { }
        return false;
    }


    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        if (ValiDate())
        {
            if (action == "'sua'")
            {
                //Update
                _ThucPhamRepository.Update(new ThucPham(id, txtTenThucPham.Value.ToString(),
                    Guid.Parse(ddlNhomThucPham.SelectedValue), int.Parse(ddlDonViTinh.SelectedValue),
                    double.Parse(txtGiaHienThoi.Value), int.Parse(Session["SchoolID"].ToString())));
                Alert.Show("Cập nhật dữ liệu thành công!");
                Alert.ClodePopup();
            }
            if (action == "'them'")
            {
                //AddNew
                _ThucPhamRepository.Insert(new ThucPham(Guid.NewGuid(), txtTenThucPham.Value.ToString(),
                    Guid.Parse(ddlNhomThucPham.SelectedValue), int.Parse(ddlDonViTinh.SelectedValue),
                    double.Parse(txtGiaHienThoi.Value), int.Parse(Session["SchoolID"].ToString())));
                Alert.Show("Cập nhật dữ liệu thành công!");
                Alert.ClodePopup();
            }
        }
        else
        {
            Alert.Show("Thông tin cần nhập chưa đầy đủ hoặc nhập không đúng kiểu dữ liệu !");
        }

    }


    protected void LoadDropdownlist()
    {
        ddlNhomThucPham.DataSource = _NhomThucPhamRepository.GetList();
        ddlNhomThucPham.DataTextField = "TenNhomThucPham";
        ddlNhomThucPham.DataValueField = "Id";
        ddlNhomThucPham.DataBind();
        ddlDonViTinh.DataSource = _DonViTinhRepository.GetList();
        ddlDonViTinh.DataTextField = "TenDonViTinh";
        ddlDonViTinh.DataValueField = "Id";
        ddlDonViTinh.DataBind();
    }
}